/*
 * Aluno.java
 * 
 * Projeto: Kruskal - SRAC
 * LEDS - Laboratório de Engenharia e Desenvolvimento de Software
 * IFES - Instituto Federal do Espírito Santo - Campus Serra.
 */
package srac.controleatividades.cdp;

import java.util.List;
import javax.persistence.*;
import srac.controleeventos.cdp.Participante;
import util.utilitarioPersistencia.ObjetoPersistente;

@Entity
public class Aluno extends ObjetoPersistente {

    private String nome;
    private String email;
    private String matricula;
    private String cpf;
    private StatusSubmissao statusSubmissao;
    private Usuario usuario;
    private List<Participante> participacoes;

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    public String getMatricula() {
        return matricula;
    }

    public void setMatricula(String matricula) {
        this.matricula = matricula;
    }

    public String getNome() {
        return nome;
    }

    public void setNome(String nome) {
        this.nome = nome;
    }

    @Enumerated(EnumType.STRING)
    public StatusSubmissao getStatusSubmissao() {
        return statusSubmissao;
    }

    public void setStatusSubmissao(StatusSubmissao statusSubmissao) {
        this.statusSubmissao = statusSubmissao;
    }

    @OneToOne
    public Usuario getUsuario() {
        return usuario;
    }

    public void setUsuario(Usuario usuario) {
        this.usuario = usuario;
    }

    @OneToMany(cascade= CascadeType.PERSIST, fetch= FetchType.EAGER)
    public List<Participante> getParticipacoes() {
        return participacoes;
    }

    public void setParticipacoes(List<Participante> participacoes) {
        this.participacoes = participacoes;
    }

    public String getCpf() {
        return cpf;
    }

    public void setCpf(String cpf) {
        this.cpf = cpf;
    }
    
    
    
    

    @Override
    public String toString() {
        String s;
        if (this.getStatusSubmissao().equals(StatusSubmissao.ATIVIDADES_PENDENTES)) {
            s = "Não Conferidas";
            return s;
        } else {
            s = "Conferidas";
            return s;
        }
    }
}